#include <bits/stdc++.h>
using namespace std;
#define yes cout << "YES" << endl
#define no cout << "NO" << endl
using ll = long long;
vector<vector<int>> a;
class Solution
{
public:
    void solve(int r, int c, int size, int now, vector<vector<int>>& mp)
    {
        if(size==1)
        {
            mp[r][c] = now;
            return ;
        }
        int half = size / 2;//2
        int area = half * half;//4
        solve(r, c + half, half, now + area * 0, mp);
        solve(r+half, c + half, half, now + area * 1, mp);
        solve(r + half, c, half, now + area * 2, mp);
        solve(r + half, c , half, now + area * 3, mp);
    }
    vector<vector<int>> specialGrid(int n)
    {
        int size = pow(2, n);
        vector<vector<int>> mp(size, vector<int>(size, 0));
        solve(0, 0, size, 0, mp);

        return mp;
    }
};

int main()
{
    ;
    return 0;
}
